package iterator_pattern.exercise.exercise1;

/**
 * 统一迭代器接口
 * @author ricejson
 */
public interface Iterator {
    /**
     * 返回起始元素
     * @return 起始元素
     */
    Object first();

    /**
     * 是否已经迭代完毕
     * @return true： 迭代完毕，false：未迭代完毕
     */
    boolean isDone();

    /**
     * 返回下一个元素
     * @return 下一个元素
     */
    Object next();

    /**
     * 获取当前元素
     * @return 当前元素
     */
    Object currentItem();

}
